from flask import Flask, make_response

app = Flask(__name__)
# 载入配置文件   使用app.config['DEBUG'] 读取时的键值必须全大写
app.config.from_object('config')

@app.route('/')
@app.route('/hello')  # 路由注册
def hello():  # 视图函数编写（基于方法的视图）
    '''
            这不是一个简单的return 它返回的是一个  Response  对象
    会返回 status（状态码200，400）、返回 content-type（放在http的headers里面）
    返回永远都是文本，但是解析(浏览器解析我返回的)文档的方式有多种。解析方式的默认值 content-type=text/html
    ：返回方式有多种写法
    '''
    headers = {
        'content-type': 'text/plain',
        'location': 'https://www.baidu.com/'
    }
    # response = make_response('<html></html>', 301)
    # response.headers = headers
    # return response
    return '<html></html>', 301,headers


# app.add_url_rule('/hello',view_func=hello)  #路由注册方式2
if __name__ == '__main__':  # 作用：在别的文件导入当前文件时运行，不会运行下面的代码
    # 生产环境 nginx(接受客户端信息)+uxsgi(启动服务) 此时不需要app.run来启动了
    app.run(host='127.0.0.1', debug=app.config['DEBUG'], port=8181)
